#ifndef _MAINPAGE_GUI_H_
#define _MAINPAGE_GUI_H_

#ifdef __cplusplus
extern "C" {
#endif

#include "lvgl.h"

typedef struct
{
    int year;
    int month;
    int day;
    int week;
    int hour;
    int min;
    int sec;
}gui_time_t;

typedef struct
{
    char position[32];      //地点位置
    char text[32];      //天气文字
    char wind_dir[16];      //风向
    int code;       //天气代码
    int temp;       //温度
    int feel_temp;      //体感温度
    int pressure;       //气压
    int humi;           //相对湿度
    int wind_level;     //风力等级
    int max_temp;       //最高气温
    int min_temp;       //最低气温
}gui_weather_t;


typedef void (*exit_cb_t)(lv_event_t *);
typedef void (*run_app_t)(const char *,  char*const* );        //参数为执行文件名称

typedef struct _gui_opt
{
    exit_cb_t exit_cb;          //退出进程回调函数
    run_app_t run_app;      //运行应用程序回调函数
}gui_opt_t;

void main_page_gui_boot_init(void);
void main_page_gui_boot_update(const char *text);
void main_page_gui_boot_release(void);

void main_page_gui_init(gui_opt_t *opts, const char *bg_file);
void main_page_gui_release(void);

void main_page_gui_update_date(gui_time_t *time);
void main_page_gui_update_weather(gui_weather_t *weather);
void main_page_gui_add_application(const char *name, const char *exec, char *const argv[], void *icon);

#ifdef __cplusplus
}
#endif



#endif


